Technical Architecture
System Architecture Diagram
Client LayerWeb Management Console / App / Mobile Client
HTTPS / WebSocket
Spring Cloud GatewayUnified Entry · JWT Authentication · Request Routing · Rate Limiting
User Serviceuser
Gateway Managementmgmt
Data Servicedata
Application Serviceapp
Extension Hookexhook
Common Servicecommon
Infrastructure LayerMySQL 8 · Redis · InfluxDB · Nacos · MQTT Broker
MQTT
Edge Gateway DevicesGo-HTTP
Technology Stack
| Category | Technology | Description |
|---|---|---|
| Base Framework | Java 17 + Spring Boot 3.0.2 | Latest LTS version |
| Microservice Governance | Spring Cloud Alibaba 2022 | Nacos service registry and configuration center |
| API Gateway | Spring Cloud Gateway | Unified entry, authentication, and routing |
| Service Invocation | OpenFeign | Load-balanced calls between microservices |
| Business Database | MySQL 8.0 | Structured business-data storage |
| Cache | Redis | Session caching and hot-data acceleration |
| Time-Series Database | InfluxDB | Large-scale time-series data storage and queries |
| Message Middleware | EMQX | MQTT broker supporting tens of thousands of devices |
| Excel Processing | EasyExcel 3.3 + Apache POI 4.1 | Batch import and export |
| RPC Framework | gRPC | Remote calls for the extension-hook module |
| SMS Service | Alibaba Cloud SMS | User notifications and verification codes |
Microservice Modules
| Module | Name | Responsibilities |
|---|---|---|
| user | User Service | User authentication, roles and permissions, and project management |
| mgmt | Gateway Management | Gateway lifecycle, device management, Cloud SCADA, and remote operations and maintenance |
| data | Data Service | Data ingestion, storage, queries, and data broadcasting |
| app | Application Service | Mobile-app APIs |
| exhook | Extension Hook | gRPC remote hooks and third-party system integration |
| common | Common Service | Shared utilities and foundational services |
| gateway | API Gateway | Unified authentication, route distribution, rate limiting, and circuit breaking |